This application claims the priority of German Patent Application Serial No. 101 39 931.6, filed Aug. 14, 2001, the subject matter of which is incorporated herein by reference.
The invention relates to a method and an apparatus for weight compensation in guiding a movement of a moveable machine element in an industrial processing machine, and more particularly to a method and apparatus for weight compensation in a numerically controlled machine tool, such as a robot.
In industrial processing machines, a machine element has to be positioned very precisely to meet today""s requirements for the accuracy of, for example, the work pieces machined by a numerically controlled machine tool.
The absolute positioning and orientation accuracy of machine tools and robots is diminished in particular by the following factors:
through thread pitch errors of linear axes having ball thread drives,
due to sagging of guide rails, for example caused by the weight of the tool and the spindle of a machine tool,
through twisting and lacking straightness of guide rails,
through angular errors between the guide rails,
because the actual geometric dimensions of components are not sufficiently known, since frequently the drawing measurements are used instead of the correct information,
with non-Cartesian machine tools and robots, the coordinate transformation for the controls is frequently based on a simplified mathematical model in order to limit the computing time and to keep the number of geometric parameters manageable.
Established methods have been developed to compensate the causes for thread pitch errors. The twisting and angular errors can be reduced by specifying narrower tolerances. However, the technical complexity and hence also the price of the processing machine increase exponentially with the required accuracy.
However, the two error sources mentioned last is typically either accepted or an attempt is made to compensate for these errors by refining the mathematical model. This can increase the complexity of the software and may require additional computing resources.
A compensation of the forces caused by the weight of the various components on machine tools or robots would therefore be desirable.
As a result of the elasticity, the weight changes the dimension of these components. Neglecting this effect causes deviations between the set point and the actual position of the machine. In some situations, these can be greater than 50 xcexcm.
Frequently, the positioning accuracy and under rare circumstances also the orientation accuracy in the workspace is measured by external measuring devices after the processing machine begins operation. Highly accurate external measuring devices, such as laser interferometers, are available for measuring the elastic deformation of Cartesian machine tools. These measured values are then stored in the controller in form of compensation tables. Depending on the application, these measured values are frequently inadequate due to the aforedescribed reasons.
However, this method cannot be applied at all to non-Cartesian machine tools and robots. For provide weight compensation for such machines with parallel kinematics tools, a different solution was proposed in the German Patent Application 100 33 074.6. The position-dependent length changes caused by the weight in a plurality of close kinematics chains connecting a stationary first element with a moveable second element can be compensated by distributing the weight that acts of the moved element by using a forward transformation to the corresponding kinematics chains. A corresponding compensation value is determined from the resulting length changes.
This requires a complex computation in the processing task loop. Moreover, the weight in the workspace is assumed to be constant, which is not the case in various embodiments of parallel machine tools, and also not with articulated robots. In the analytical calculation of a weight acting on the actuators participating in guiding the motion, the location of the center of gravity of all essential components should be known. The effective forces and moments for each position of the machine also have to be computed.
It would therefore be desirable to provide a method and an apparatus for automatically determining suitable compensation values in both with Cartesian and non-Cartesian machine tools.
According to one aspect of the present invention, a method is disclosed for weight compensation in guiding a movement of a moveable machine element of an industrial processing machine with a predetermined set-point for generating control input variables for at least one actuator for controlling the machine element in a predetermined workspace having the following process steps:
automatically determining changes in a length for each actuator caused by the weight for a determined number of different points of the machine element in the workspace,
adding an elastic change in the length of the actuator caused by a force, that acts on the respective actuator in a static state, and additional elastic changes in length, that are caused by the force at articulated joints and/or additional components of the actuator having a fixed length, to form a total change in length,
storing the corresponding operating point and the determined corresponding total change in length in a compensation table for each actuator,
using the determined changes in total length stored in the compensation table as compensation values when generating control input values for each actuator by
adding the control input values to the corresponding compensation value, if a set-point is identical to one of the predetermined operating points, or
adding a compensation value determined by interpolating the compensation values from the compensation table in the intervals of the respective operating points.
Advantageously, a force acting in the static state on the respective actuator can be set to be identical to the opposing force of a motor on the respective actuator. The opposing force of the motor can be determined from a respective instantaneous nominal current value and/or from an actual current value of the motor.
According to another advantageous embodiment of the method of the present invention, the opposing force of the motor can be determined from the equation       F    a    =            i      s        ·          m      k        ·                  2        ⁢        π            P      
if the actuator is implemented as a ball screw drive, or
Fa=isxc2x7mk 
if the actuator is implemented as a linear direct drive, wherein
is=instantaneous nominal current value and/or actual current value,
mk=motor constant in [Nm/A], and
P=thread pitch of the ball screw drive of the actuator.
According to another advantageous embodiment of the method, an elastic length change of the actuator can be determined from the equation       d    ⁢          xe2x80x83        ⁢          k              A        ⁢                  xe2x80x83                ⁢        k        ⁢                  xe2x80x83                ⁢        t        ⁢                  xe2x80x83                ⁢        o        ⁢                  xe2x80x83                ⁢        r              =                    F        a            ·      k              A      ·      E      
wherein
k=actual length,
A=cross-sectional area, and
E=elasticity modulus of the actuator.
According to yet another advantageous embodiment, an elastic length change of the articulated joints and/or additional components having the unchanged length can be determined from the equation
dk0=Faxc2x7c0 
wherein
c0=reciprocal stiffness.
Advantageously, the compensation values can be applied by adding the total length changes to the corresponding set points after an inverse transformation, i.e., after the Cartesian base coordinate system is transformed into the machine axes of the moveable machine element.
Advantageously, the workspace of the processing machine can have a cuboid form which for determining the operating points can be subdivided into a three-dimensional lattice structure, wherein the determined change in total length for each actuator is stored at each lattice point or at a subset of lattice points in a data field of the compensation table.
To compensate for set points outside the predetermined workspace, the compensation value can be selected that is associated with a point located closest to the edge of the workspace. Alternatively, the compensation value can be extrapolated from compensation values located inside the workspace. Advantageously, the compensation table is implemented as a data array.
The method of the invention can be further simplified by subdividing the positioning range of the machine element for each degree of freedom of the processing machine into equidistant segments, in particular if each dimension of the workspace can be defined by a minimum value, a maximum value and a number of equidistant segments.
Advantageously, the method of the invention can be carried out automatically when the processing machine is started, by applying the desired positions in the workspace via a corresponding parts program having positioning commands for the predetermined set points and by measuring and transferring to a machine controller the corresponding instantaneous nominal current values and/or the actual current values after the corresponding positions have been reached. The values of the total length changes are determined in the machine controller and entered together with the associated positions in the compensation table.
The method can be implemented by using a suitably programmed numeric control which can also be used for determining the compensation values.
The described process steps of the invention provide, among others, the following advantages:
no external measurement devices are required;
the effective forces can be measured directly in the actuators;
errors due to erroneous simulation of the weight distribution can be largely eliminated;
simple implementation with a numeric control CNC;
transferable to any type of machine tool with known elasticity module and stiffness;
the operators can check on the operator console the compensation values for the length changes;
determination of the values for the changes in length can be easily automated;
effects due to the actual static weight are compensated, which enhances the positioning accuracy of the machine tool or robot;
the required manufacturing tolerances of the components of the processing machine are relaxed, which can reduce manufacturing costs;
the mathematical model can be simplified, which can reduce the run-time in the controller.
The method of the invention, unlike conventional or other proposed methods, almost entirely eliminates the difficulties associated with the analytical calculation of the length changes. Modern digital electric drives offer the possibility to compute the required measurements automatically with a NC-parts program. The proposed weight compensation is therefore more easily implemented and can be used almost universally.
Further features and advantages of the present invention will be apparent from the following description of preferred embodiments and from the claims.